package liuhao.bank.dao;

import java.util.List;

import liuhao.bank.entity.BankEntity;
import liuhao.dto.PageDTO;

public interface BankDao {
	
	/**
	 * 				   添加一个银行
	 * @param entity  银行实体
	 * @return  	   返回1则操作成功
	 * @throws Exception
	 */
	int addBank(BankEntity entity) throws Exception;
	
	/**
	 * 				删除一个银行
	 * @param entity   银行名字
	 * @return  	返回1则操作成功
	 * @throws Exception
	 */
	int deleteBankByName(BankEntity entity)throws Exception;
	
	/**
	 * 				删除一个银行
	 * @param did   银行的id
	 * @return  	返回1则操作成功
	 * @throws Exception
	 */
	int deleteBank(Integer did)throws Exception;
	
	
	
	/**
	 * 					对银行进行更新
	 * @param entity	银行实体
	 * @return			返回1则操作成功
	 * @throws Exception
	 */
	int updateBank(BankEntity entity) throws Exception;
	
	
	/**
	 * 				根据银行id查找银行
	 * @param bid	银行id
	 * @return		银行
	 * @throws Exception
	 */
	BankEntity findBankById(Integer id) throws Exception;
	/**
	 * 				根据银行name查找银行
	 * @param bid	银行id
	 * @return		银行
	 * @throws Exception
	 */
	int findBankByName(String name) throws Exception;

	/**
	 * 			分页查询所有的银行
	 * @return		银行列表
	 * @throws Exception
	 */
	List<BankEntity> findBanks(PageDTO page) throws Exception;
	
	/**
	 * 获得分页后的总页数
	 * @param page page对象
	 * @return 获得分页后的总页数
	 * @throws Exception
	 */
	int queryPageAcount() throws Exception;
}
